As the Internet has come to be a leading source of information and a major avenue for commerce, more and more consumers/users have come to rely on various third parties to store their data and then provide the user access to that data whenever the user desires, typically via the Internet, and/or one or more web-sites. As a specific example, many users rely on financial institutions, such as banks and credit card providers, to maintain data representing financial transactions conducted by the user and to provide the user access to that data.
In addition, many users have adopted data management systems that, in some cases, have the ability to obtain data from the various third parties, and third party web-sites, where the user's data is maintained. As a specific example, there are currently available various financial management systems including, but not limited to, computing system implemented, or web-based, systems, packages, programs, modules, or applications that gather financial data, including financial transactional data from these third parties, and that have the capability to analyze and categorize at least part of the financial data into various reports or displays that are provided to the user.
Types of financial management systems currently available include, but are not limited to, any of the following: on-line, or web-based, or computing system implemented, personal or business financial management systems, packages, programs, modules, or applications; on-line, or web-based, or computing system implemented, home or business inventory systems, packages, programs, modules, or applications; on-line, or web-based, or computing system implemented, personal or business asset management systems, packages, programs, modules, or applications; on-line, or web-based, or computing system implemented, personal or business accounting systems, packages, programs, modules, or applications; or any other on-line, or web-based, or computing system implemented, financial management systems discussed herein or as known in the art at the time of filing.
Specific examples of financial management systems currently available include, but are not limited to: Quicken™, available from Intuit Inc. of Mountain View, Calif.; Quicken Online™, available from Intuit Inc. of Mountain View, Calif.; QuickBooks™, available from Intuit Inc. of Mountain View, Calif.; Mint.com™, available from Intuit Inc. of Mountain View, Calif.; Microsoft Money™, available from Microsoft, Inc. of Redmond, Wash.; or various other computing system implemented financial management systems discussed herein, or known to those of skill in the art at the time of filing, or as developed after the time of filing.
As noted above, currently available financial management systems help individuals/users manage their finances by providing a centralized interface with banks, credit card companies, asset account providers, mortgage companies, retirement account providers, and other various financial and asset management institutions or accounts, for identifying, processing, storing, and categorizing largely historical data associated with completed user financial transactions. To this end, financial management systems typically try to obtain financial transaction information, such as payee identification, payee location, payment amount, date of the transaction, time of transaction, the type of transaction, etc., via communication with banks, credit card providers, or other financial institutions, often by using electronic data transfer systems such as the Open Financial Exchange (OFX) specification or various other systems for transferring financial transaction data.
Some sources of user data, i.e., some third parties that maintain data on behalf of users, do not have OFX capability. In addition, in some cases, third parties that maintain data on behalf of users do not want to allow “outside” data management systems access to the user's data, despite the fact the user desires the data management systems to have access to the user's data, and the data management systems have explicit access permission. Often, this situation arises when the third parties that maintain data on behalf of users desire to force the user to use a competing data management product offered by, and/or sponsored by, and/or otherwise associated with the third party.
Despite third parties trying to prevent a user from allowing a data management system access to their own data, in some cases, a data management system, such as a financial management system, can still obtain the user's data, particularly when the third party allows users to access to their data using a web interface/website. In these cases, in order to obtain access to their own data, the users provide the data management system their log-on credentials, such as user name and password, and then the data management system accesses the third party, or “target”, web-site using a data management system provider computing system, such as a data management system provider server system. The data management system provider computing system then “pretends” to be the user by using the provided log-in credentials to access the user's data. In some cases the data is accessed “directly” and in other cases the data is obtained via “screen scraping” or a similar technology.
However, as data management has become a more important service, and therefore a more profitable business, more and more third parties that maintain data on behalf of users have begun to take further measures to prevent data management systems from accessing a user's data on behalf of the user. These further measures include implementing specific blocking mechanisms or access filters that identify data management system provider computing systems, often using IP addresses, and then block any access to the third party web-sites/user data based on this identification. Typically, this occurs despite permissions and log-on credentials that the data management systems may have obtained from the users, and despite the users' desire that the data management systems obtain their data.
FIG. 1 is a block diagram illustrating one example of current hardware architecture for accessing user data 154 and current access blocking measures taken by some third parties that maintain data on behalf of users. As seen in FIG. 1, current hardware architecture for accessing user data 154 includes: a user computing system 100, e.g., a “user” or “first” computing system; a target site computing system 150, e.g., a “third party web-site” or “second” computing system; and a provider computing system 120, e.g., a “data management system provider” or “third” computing system, all operatively coupled by a network 130.
As seen in FIG. 1, user computing system 100 typically includes a central processing unit (CPU) 101 and a memory system 103. In one embodiment, memory system 103 includes all, or part of, a computing system implemented data management system 180 such as, but not limited to: a computing system implemented financial management system; a computing system implemented personal financial management system; a computing system implemented business financial management system; a computing system implemented personal accounting system; a computing system implemented business accounting system; a computing system implemented tax preparation system; a computing system implemented healthcare management system; or any other computing system implemented personal and/or business data management system, as discussed herein, and/or as known in the art at the time of filing, and/or as developed after the time of filing. In one embodiment, data management system 180 is stored, in whole, or in part, in memory system 103.
User computing system 100 may further include standard user interface devices such as a keyboard (not shown), a mouse (not shown), a printer (not shown), and a display device (not shown), as well as, one or more standard input/output (I/O) devices (not shown), such as a compact disk (CD) or Digital Video Disc (DVD) drive, floppy disk drive, or other device capable of inputting data to, and outputting data from, user computing system 100, whether available or known at the time of filing or as later developed.
User computing system 100 can also include an Internet browser (not shown) that is stored, in whole, or in part in memory 103.
User computing system 100 can be any computing system discussed herein, and/or as known in the art at the time of filing, and/or as developed after the time of filing, such as, but not limited to, a desktop computing system, a laptop computing system, a notebook computing system, a workstation, a two-way pager, a cellular telephone, a smart phone, a digital wireless telephone, a Personal Digital Assistant (PDA), a server computer, an Internet appliance, any other device, or any desired combination of these devices.
In addition, it should be noted that user computing system 100 can be representative of two more, i.e., multiple, user computing systems and that a single user computing system 100 is shown in FIG. 1 as illustrative of one or more user computing systems, such as user computing system 100.
Target site computing system 150 typically includes: a CPU 151; a memory system 153 that includes user data 154; an input/output (I/O) interface to user data 155; and selective block/failure filter 157.
Target site computing system 150 can be representative of any server, web-based, desktop, or other computing system. In addition, it should be noted that target site computing system 150 can be representative of two more, i.e., multiple, target site computing systems and that a single target site computing system 150 is shown in FIG. 1 as illustrative of one or more target site computing systems, such as target site computing system 150.
In addition target site computing system 150 can be representative of any database, data storage device, designated server system or computing system, a designated portion of one or more server systems or computing systems, a distributed database, a dedicated mass storage device implemented in software, hardware, or a combination of hardware and software, and/or any web-site or web-based function.
As discussed above, target site computing system 150 is representative of various third party data storage and presentation systems that store various data, such as user data 154, associated with one or more users and then provide the users access to that data, typically via the Internet and one or more web-sites. As a specific example, target site computing system 150 may be maintained by financial institutions, such as banks and credit card providers, to maintain data, such as user data 154, representing financial transactions conducted by the user and to provide the user access to that data.
Target site computing system 150 can be any computing system discussed herein, and/or as known in the art at the time of filing, and/or as developed after the time of filing, such as, but not limited to, a desktop computing system, a laptop computing system, a notebook computing system, a workstation, a two-way pager, a cellular telephone, a smart phone, a digital wireless telephone, a Personal Digital Assistant (PDA), a server computer, an Internet appliance, any other device, or any desired combination of these devices, that includes components that can execute all, or part, of a process for obtaining user data from a third party, and/or a computing system implemented financial management system, in accordance with at least one of the embodiments as described herein.
As also shown in FIG. 1, provider computing system 120 includes memory 123, with at least part of an online data management system 190 therein; and CPU 121. As noted above, one specific illustrative example of an online data management system 190 is any on-line financial management system such as, but not limited to: an on-line personal financial management system; an on-line business financial management system; an on-line personal accounting system; an on-line business accounting system; an on-line tax preparation system; an on-line healthcare management system; or any other an on-line personal and/or business data management system, as discussed herein, and/or as known in the art at the time of filing, and/or as developed after the time of filing.
Provider computing system 120 is any computing system discussed herein, and/or as known in the art at the time of filing, and/or as developed after the time of filing, such as, but not limited to, a desktop computing system, a laptop computing system, a notebook computing system, a workstation, a two-way pager, a cellular telephone, a smart phone, a digital wireless telephone, a Personal Digital Assistant (PDA), a server computer, an Internet appliance, any other device, or any desired combination of these devices, that includes components that can execute all, or part, of a process for obtaining user data from a third party, and/or a computing system implemented financial management system, in accordance with at least one of the embodiments as described herein.
Network 130 can be any network or network system that is of interest to a user such as, a peer-to-peer network, a hybrid peer-to-peer network, a Local Area Network (LAN), a Wide Area Network (WAN), a public network, such as the Internet, a private network, a combination of different network types, or other wireless, wired, and/or a wireless and wired combination network capable of allowing communication between two or more computing systems, whether available or known at the time of filing or as later developed.
Typically, using current systems, user data 154 is accessible to a user, and/or user computing system 100, via network connection 171A and 171B through network 130 to I/O interface to user data 155. As discussed above, it is now often the case that the user, and user computing system 100, is identified by selective block/failure filter 157, often by an IP address associated with user computing system 100, before access to user data 154 is allowed.
In addition, using some current systems, provider computing system 120 obtains permission and/or log-on credentials for target site computing system 150 and user data 154 from the user. Then provider computing system 120 attempts to access user data 154 using the provided permission and/or log-on credentials for target site computing system 150 via network connection 181A and 181B through network 130 to I/O interface to user data 155. However, in some cases, provider computing system 120 is identified by selective block/failure filter 157, often by an IP address associated with provider computing system 120, and, before access to user data 154 is allowed, provider computing system 120 is blocked, i.e., denied access by selective block/failure filter 157.
Consequently, currently, the user must often manually login to target site computing systems, manually collect the data they need and type it into the data management system line by line.
As discussed above, using current data access systems, data management systems, and data management system provider computing systems, are often denied access to third party web-sites and user data despite the fact that the users have implicitly and/or explicitly indicated a desire to provide the data management systems access to what, after all, is their data. As also noted above, this typically occurs because the third parties that maintain data on behalf of users desire to force the user to use a competing data management product offered by, and/or sponsored by, and/or otherwise associated with, the third party. Consequently, using current data accessing systems, users are often held hostage by their own data. This situation not only arguably represents a misuse of power, and a user's data, it also has a chilling effect on the development and marketing of potentially more efficient and useful data management systems.